1. Field of the Invention
The present invention relates to noise shaping in segmented mixed-signal circuitry such as, for example, digital-to-analog converters.
2. Description of the Related Art
FIG. 1 of the accompanying drawings shows parts of a conventional digital-to-analog converter (DAC) of the so-called xe2x80x9ccurrent-steeringxe2x80x9d type. The DAC 1 is designed to convert an m-bit digital input word (D1-Dm) into a corresponding analog output signal.
The DAC 1 includes a plurality (n) of identical current sources 21 to 2n, where n=2mxe2x88x921. Each current source 2 passes a substantially constant current I. The DAC 1 further includes a plurality of differential switching circuits 41 to 4n corresponding respectively to the n current sources 21 to 2n. Each differential switching circuit 4 is connected to its corresponding current source 2 and switches the current I produced by the current source either to a first terminal, connected to a first connection line A of the converter, or a second terminal connected to a second connection line B of the converter.
Each differential switching circuit 4 receives one of a plurality of control signals T1 to Tn (called xe2x80x9cthermometer-coded signalsxe2x80x9d for reasons explained hereinafter) and selects either its first terminal or its second terminal in accordance with the value of the signal concerned. A first output current IA of the DAC 1 is the sum of the respective currents delivered to the differential-switching-circuit first terminals, and a second output current IB of the DAC 1 is the sum of the respective currents delivered to the differential-switching-circuit second terminals.
The analog output signal is the voltage difference VA-VB between a voltage VA produced by sinking the first output current IA of the DAC 1 into a resistance R and a voltage VB produced by sinking the second output current IB of the converter into another resistance R.
In the FIG. 1 DAC the thermometer-coded signals T1 to Tn are derived from the binary input word D1-Dm by a binary-thermometer decoder 6. The decoder 6 operates as follows.
When the binary input word D1-Dm has the lowest value the thermometer-coded signals T1-Tn are such that each of the differential switching circuits 41 to 4n selects its second terminal so that all of the current sources 21 to 2n are connected to the second connection line B. In this state, VA=0 and VB=nIR. The analog output signal VA-VB=xe2x88x92nIR.
As the binary input word D1-Dm increases progressively in value, the thermometer-coded signals T1 to Tn produced by the decoder 6 are such that more of the differential switching circuits select their respective first terminals (starting from the differential switching circuit 41) without any differential switching circuit that has already selected its first terminal switching back to its second terminal. When the binary input word D1-Dm has the value i, the first i differential switching circuits 41 to 4i select their respective first terminals, whereas the remaining n-i differential switching circuits 4i+1 to 4n select their respective second terminals. The analog output signal VA-VB is equal to (2ixe2x88x92n)IR.
FIG. 2 shows an example of the thermometer-coded signals generated for a three-bit binary input word D1-D3 (i.e. in this example m=3). In this case, seven thermometer-coded signals T1 to T7 are required (n=2mxe2x88x921=7).
As FIG. 2 shows, the thermometer-coded signals T1 to Tn generated by the binary-thermometer decoder 6 follow a so-called thermometer code in which it is known that when an rth-order signal Tr is activated (set to xe2x80x9c1xe2x80x9d), all of the lower-order signals T1 to Trxe2x88x921 will also be activated.
Thermometer coding is popular in DACs of the current-steering type because, as the binary input word increases, more current sources are switched to the first connection line A without any current source that is already switched to that line A being switched to the other line B. Accordingly, the input/output characteristic of the DAC is monotonic and the glitch impulse resulting from a change of 1 in the input word is small.
It will be appreciated that the number of current sources 2 and corresponding differential switching circuits 4 in the FIG. 1 architecture is quite large, particularly when m is greater than or equal to 6. When m=6, for example, n=63, and 63 current sources and 63 differential switching circuits are required. In order to deal with such a large number of current sources, and to enable the thermometer signals to be delivered efficiently to the different differential switching circuits, it has been proposed to arrange the current sources and differential switching circuits as a two-dimensional array of cells, each cell including one current source and its associated differential switching circuit. This arrangement is shown in FIG. 3.
In FIG. 3, 64 cells CLij are arranged in an 8xc3x978 square array having eight rows and eight columns. In FIG. 3, the first digit of the suffix applied to each cell denotes the row in which the cell is located and the second digit of the suffix denotes the column in which the cell is located. Thus, the cell CL18 is the cell in row 1, column 8.
Each cell CLij includes its own current source 2 and its own differential switching circuit 4. The respective first terminals of the cells of the array are connected together to a first connection line A of the DAC and the respective second terminals of the cells of the array are connected together to a second connection line B of the DAC, as in the FIG. 1 DAC.
The numbers allotted to the cells CLij in FIG. 3 denote the sequence in which the cells are activated (or controlled) to change from selecting their respective second terminals to selecting their respective first terminals. The activation sequence follows the physical order of the cells in the array, starting from row 1 and activating the cells of that row sequentially in column order, followed by row 2, and so on for each successive row of the array.
One problem which arises in the FIG. 3 arrangement is that, although the output currents of the respective current sources 2 of the different cells of the array should be uniform, in practice the actual output currents of the cells suffer from non-uniformity arising from various causes.
For example, a voltage drop along a power supply line can cause a graded error along a row or column, as shown in FIG. 4(A). In this case, the current sources in the first four cells of the row or column concerned may have negative errors, signifying that each of them produces a below-average output current. These negative errors decrease towards the centre of the row or column concerned. The current sources in the remaining cells 5 to 8 of the row or column concerned have respective positive errors, signifying that each of them produces an above-average output current. These positive errors increase from the centre of the row or column to the end.
Thermal distribution inside a chip including the array can cause a symmetrical error within a row or column, as shown in FIG. 4(B). In this case, the current sources in the end cells 1, 2, 7 and 8 of the row or column have negative errors, whereas the current sources of the central cells 3 to 6 of the row or column have positive errors.
In addition, there can be other types of error such as random errors. The final error distribution for the cell array is produced by superposing all the different error components.
The graded and symmetrical errors shown in FIGS. 4(A) and FIG. 4(B) tend to accumulate and result in a large integral linearity error (INL). For example, imagine that the graded error distribution shown in FIG. 4(A) exists within the first row of the cell array shown in FIG. 3. In this case, as cells 1 to 4 are progressively activated (changed from selecting their respective second terminals to selecting their respective first terminals) the negative errors accumulate, amounting to a significant total negative error when the digital input code is 4. Only when cells 5 to 8 are sequentially activated do the positive errors attributable to these cells start to cancel out the large negative error attributable to cells 1 to 4.
Of course the situation is even worse if there are graded errors corresponding to FIG. 4(A) along each of the columns 1 to 8. In this case, as cells 1 to 8 are progressively activated, the largest negative error (the error at position 1 in FIG. 4(A)) occurs for each of the eight cells of row 1. Similarly, in row 2, negative errors corresponding to position 2 in FIG. 4(A) accumulate eight times. Thus, by the time the input code has increased to 32 (corresponding to all of the cells in rows 1 to 4 being activated) the accumulated negative error is very large indeed.
Similar problems arise with the accumulation of symmetrical errors of the kind shown in FIG. 4(B).
Mismatches due to graded and symmetrical errors can be reduced by selecting the cells in a special sequence different from the sequence in which they are arranged physically in the cell array. In particular, a special cell selection sequence conforming to the sequence of numbers in a so-called xe2x80x9cmagic squarexe2x80x9d is described in the applicant""s United States patent U.S. Pat. No. 6,100,830 (corresponding to United Kingdom patent publication no. GB-A-2333190), the entire content of which is hereby incorporated by reference.
However, even when such a special cell selection sequence is employed, there inevitably remains a mismatch between the respective currents produced by the different segments. This in turn causes non- linearity in the performance of the DAC.
It has been proposed in a paper entitled xe2x80x9cStructural Optimization and Scaling of SC Delta-Sigma AADCsxe2x80x9d, Jesper Steensgaard, Delta-Sigma Data Converters Lecture Course, Mar. 16-19 1999, San Diego, Calif., to employ element (or segment) rotation to shape mismatches between the elements of a DAC. In this proposal, the elements are rotated using data-directed rotation amounts. Another paper from the same lecture course, entitled xe2x80x9cMismatch-Shaping Multibit DACs for Delta-Sigma ADCs and DACs, Ian Galton, discloses mismatch shaping techniques which move noise from low frequencies to high frequencies to improve the noise shape. In these techniques the noise increases rapidly with frequency at high output-signal frequencies, so large oversampling ratios (e.g. 8 or 25) must be used to obtain useful results. A further paper from the same lecture course, entitled xe2x80x9cUnconventional Applications of Noise-Shaping Techniquesxe2x80x9d, Bob Adams, discloses that element xe2x80x9cscramblingxe2x80x9d can be employed in a sigma-delta DAC to turn distortion into shaped noise. The scrambling can be either random, which distributes the noise evenly across the entire frequency spectrum both within and outside the desired range of frequencies of the output signal, or data-directed which moves the noise away from DC but has noise that increases in amplitude progressively with frequency.
According to a first aspect of the present invention there is provided mixed-signal circuitry, comprising digital circuitry and analog circuitry, operative to perform a series of operation cycles, wherein: said analog circuitry has a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies; and the digital circuitry comprises: digital signal generating circuitry operable in each said cycle to generate a set of digital signals for application to respective ones of said segments; rotating circuitry operable to rotate by r segments the digital signals applied to the segments in each cycle as compared to those applied in the preceding cycle, where r is a rotation amount for the cycle concerned; and rotation control circuitry which sets said rotation amount r for each said cycle such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range.
According to a second aspect of the present invention there is provided digital-to-analog conversion circuitry comprising digital circuitry and analog circuitry, and operative to perform a series of operation cycles, wherein: said analog circuitry has a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies; and the digital circuitry comprises: digital signal generating circuitry operable in each said cycle to generate a set of digital signals for application to respective ones of said segments; rotating circuitry operable to rotate by r segments the digital signals applied to the segments in each cycle as compared to those applied in the preceding cycle, where r is a rotation amount for the cycle concerned; and rotation control circuitry which sets said rotation amount r for each said cycle such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range.
According to a third aspect of the present invention there is provided a noise shaping method, for use in mixed-signal circuitry that comprises digital circuitry and analog circuitry and is operative to perform a series of operation cycles, the analog circuitry having a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies, which method comprises: generating in each said cycle a set of digital signals for application to respective ones of said segments; rotating by r segments the digital signals applied to the segments in each cycle as compared to those applied in the preceding cycle, where r is a rotation amount for the cycle concerned; and setting said rotation amount for each said cycle such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range.
According to a fourth aspect of the present invention there is provided a method of selecting a rotation amount r to be used by mixed-signal circuitry that is operative to perform a series of operation cycles and that comprises: analog circuitry having a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies; and digital circuitry which in each said cycle generates a set of digital signals for application to respective ones of said segments, the digital signals applied to the segments in each cycle being rotated by r segments as compared to those applied in the preceding cycle, such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range; said method comprising: plotting a graph having a first axis representing frequency and a second axis, perpendicular to said first axis, representing said rotation amount r; for each of a plurality of preselected lower-order rotation components, representing using a corresponding first line in the graph the different frequencies to which that component is mapped as said rotation amount r is varied; representing one or more frequencies in said desired range of frequencies of the output signal using one or more corresponding second lines in the graph extending in the second-axis-direction at appropriate positions along the first axis; identifying regions in said graph containing portions of said second lines that are not intersected by any of said first lines; and selecting said rotation amount r to be used by said mixed-signal circuitry from amongst the range of rotation amounts r corresponding to such an identified region.
According to a fifth aspect of the present invention there is provided a method of selecting a rotation amount r to be used by mixed-signal circuitry that is operative to perform a series of operation cycles and that comprises: analog circuitry having a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies; and digital circuitry which in each said cycle generates a set of digital signals for application to respective ones of said segments, the digital signals applied to the segments in each cycle being rotated by r segments as compared to those applied in the preceding cycle, such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range; said method comprising: plotting a graph having a first axis representing frequency and a second axis, perpendicular to said first axis, representing said rotation amount r; for each of a plurality of preselected significant intermodulation sidebands, representing using a corresponding said first set of lines in said graph the different frequencies to which that sideband is mapped as said rotation amount is varied; representing one or more frequencies in said desired range of frequencies of the output signal using one or more corresponding second lines in said graph extending in the second-axis-direction at appropriate positions along said first axis; identifying regions in said graph containing portions of said second lines that are not intersected by any first-set lines; and selecting said rotation amount to be used by said mixed-signal circuitry from amongst the range of rotation amounts r corresponding to such an identified region.
According to a sixth aspect of the present invention there is provided a method of selecting a rotation amount r to be used by mixed-signal circuitry that is operative to perform a series of operation cycles and that comprises: analog circuitry having a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies; and digital circuitry which in each said cycle generates a set of digital signals for application to respective ones of said segments, the digital signals applied to the segments in each cycle being rotated by r segments as compared to those applied in the preceding cycle, such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range; said method comprising: plotting a first graph having a first axis representing frequency and a second axis, perpendicular to said first axis, representing said rotation amount r; for each of a plurality of preselected lower-order rotation components, representing using a corresponding first line in said first graph the different frequencies to which that component is mapped as said rotation amount r is varied; representing one or more frequencies in said desired range of frequencies of the output signal using one or more corresponding second lines in said first graph extending in the second-axis-direction thereof at appropriate positions along said first axis thereof; identifying regions in said first graph containing portions of said second lines that are not intersected by any of said first lines; plotting a second graph having a first axis representing frequency and a second axis, perpendicular to said first axis, representing said rotation amount r; for each of a plurality of preselected significant intermodulation sidebands, representing using a corresponding first set of lines in said second graph the different frequencies to which that sideband is mapped as said rotation amount r is varied; representing one or more frequencies in said desired range of frequencies of the output signal using one or more corresponding second lines extending in said second graph in the second-axis-direction thereof at appropriate positions along said first axis thereof; identifying regions in said second graph containing portions of said second lines that are not intersected by any first-set lines; and selecting said rotation amount r to be used by said mixed-signal circuitry from amongst the range of rotation amounts r corresponding to such an identified region in one of said first and second graphs.
According to a seventh aspect of the present invention there is provided a computer-readable recording medium storing a computer program having code portions which carry out a method of selecting a rotation amount r to be used by mixed-signal circuitry that is operative to perform a series of operation cycles and that comprises: analog circuitry having a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies; and digital circuitry which in each said cycle generates a set of digital signals for application to respective ones of said segments, the digital signals applied to the segments in each cycle being rotated by r segments as compared to those applied in the preceding cycle, such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range; said program comprising: a plotting code portion which plots a graph having a first axis representing frequency and a second axis, perpendicular to said first axis, representing said rotation amount r; a rotation component representing code portion which, for each of a plurality of preselected lower-order rotation components, represents using a corresponding first line in the graph the different frequencies to which that component is mapped as said rotation amount r is varied; an output signal representing code portion which represents one or more frequencies in said desired range of frequencies of the output signal using one or more corresponding second lines in the graph extending in the second-axis-direction at appropriate positions along the first axis; thereby to facilitate identification of regions in said graph containing portions of said second lines that are not intersected by any of said first lines, and selection of said rotation amount r to be used by said mixed-signal circuitry from amongst the range of rotation amounts r corresponding to such an identified region.
According to an eighth aspect of the present invention there is provided a computer-readable recording medium storing a computer program having code portions which carry out a method of selecting a rotation amount r to be used by mixed-signal circuitry that is operative to perform a series of operation cycles and that comprises: analog circuitry having a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies; and digital circuitry which in each said cycle generates a set of digital signals for application to respective ones of said segments, the digital signals applied to the segments in each cycle being rotated by r segments as compared to those applied in the preceding cycle, such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range; said program comprising: a plotting code portion which plots a graph having a first axis representing frequency and a second axis, perpendicular to said first axis, representing said rotation amount r; a rotation component representing code portion which, for each of a plurality of preselected significant intermodulation sidebands, represents using a corresponding said first set of lines in said graph the different frequencies to which that sideband is mapped as said rotation amount is varied; an output signal representing code portion which represents one or more frequencies in said desired range of frequencies of the output signal using one or more corresponding second lines in said graph extending in the second-axis-direction at appropriate positions along said first axis; identifying regions in said graph containing portions of said second lines that are not intersected by any first-set lines; and selecting said rotation amount to be used by said mixed-signal circuitry from amongst the range of rotation amounts r corresponding to such an identified region.
According to a ninth aspect of the present invention there is provided a computer-readable recording medium storing a computer program having code portions which carry out a method of selecting a rotation amount r to be used by mixed-signal circuitry that is operative to perform a series of operation cycles and that comprises: analog circuitry having a plurality of circuitry segments which together produce an output signal having a frequency in a predetermined desired range of frequencies; and digital circuitry which in each said cycle generates a set of digital signals for application to respective ones of said segments, the digital signals applied to the segments in each cycle being rotated by r segments as compared to those applied in the preceding cycle, such that one or more rotation components, being frequency components present in a frequency spectrum of said output signal as a result of said rotation, are mapped to one or more preselected frequencies or preselected narrow bands of frequencies outside said predetermined desired range; said program comprising: a first plotting code portion which plots a first graph having a first axis representing frequency and a second axis, perpendicular to said first axis, representing said rotation amount r; a rotation component representing portion which, for each of a plurality of preselected lower-order rotation components, represents using a corresponding first line in said first graph the different frequencies to which that component is mapped as said rotation amount r is varied; a first output signal representing code portion which represents one or more frequencies in said desired range of frequencies of the output signal using one or more corresponding second lines in said first graph extending in the second-axis-direction thereof at appropriate positions along said first axis thereof; a second plotting code portion which plots a second graph having a first axis representing frequency and a second axis, perpendicular to said first axis, representing said rotation amount r; an intermodulation sideband representing code portion which, for each of a plurality of preselected significant intermodulation sidebands, represents using a corresponding first set of lines in said second graph the different frequencies to which that sideband is mapped as said rotation amount r is varied; a second output signal representing code portion which represents one or more frequencies in said desired range of frequencies of the output signal using one or more corresponding second lines extending in said second graph in the second-axis- direction thereof at appropriate positions along said first axis thereof; thereby to facilitate identification of regions in said first graph containing portions of said second lines that are not intersected by any of said first lines, identification of regions in said second graph containing portions of said second lines that are not intersected by any first-set lines, and selection of said rotation amount r to be used by said mixed-signal circuitry from amongst the range of rotation amounts r corresponding to such an identified region in one of said first and second graphs.
The program may be carried on or by a carrier. The carrier may be a storage medium (e.g. disk or CD ROM) or a signal (e.g. downloaded from Internet).
According to a tenth aspect of the present invention there is provided digital signal generating circuitry, for generating a rotating set of digital signals in successive operation cycles in dependence upon a control signal, specifying a number of said digital signals in said set which are to have a predetermined state, and a rotation amount r, specifying a number of digital signals by which said set in a current one of said cycles is rotated relative to said set in the preceding cycle, said circuitry comprising: a plurality of signal generating circuits, each having a circuit ID assigned uniquely to it, and each being operable in each said cycle to produce a rotated ID signal which is dependent on said assigned circuit ID and which differs by said rotation amount r from the rotated ID signal in the preceding cycle, and to set said digital signal for its signal generating circuit into said predetermined state in dependence upon a comparison of the rotated ID signal and said control signal; each said signal generating circuit being provided with a first circuit portion operable to produce a first part of the rotated ID signal and to compare that part of the rotated ID signal with a first part of said control signal, and with a second circuit portion operable to produce a second part of said rotated ID signal and to compare that part with a second part of said control signal, wherein said second circuit portion produces the second part of the rotated ID signal whilst said first circuit portion compares the first part of the rotated ID signal with the first part of the control signal. One such first circuit portion can be provided in common for a group of said segments whose respective said rotated-ID-signal first parts are the same and whose respective data-signal first parts are the same.